#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QMenuBar>
#include <QPainter>
#include <QMouseEvent>
#include <QTimer>
#include <QDebug>
#include <QMessageBox>
#include <math.h>

#include "gamemodel.h"

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = 0);
    ~MainWindow();

private:
    GameModel *game;    // 游戏指针
    GameType game_type; // 存储游戏类型
    int clickPosRow, clickPosCol; // 存储将点击的位置

    // 绘制
    void paintEvent(QPaintEvent *event);
    // 监听鼠标移动情况
    void mouseMoveEvent(QMouseEvent *event);
    // 实际落子
    void mouseReleaseEvent(QMouseEvent *event);
    //初始化游戏
    void initGame();
    //AI对战模式初始化
    void initPVEGame();
    //下棋
    void checkGame(int y, int x);
    // 玩家下棋
    void chessOneByPerson();

//定义槽函数
private slots:
    // AI下棋
    void chessOneByAI();
};

#endif // MAINWINDOW_H
